<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>promise对象的race方法</title>
</head>
<body>
    
</body>
<script>
    //race () 将多个 promsie 对象实例包装成新的 promise 对象
    // 如果多个实例中状态都为 fulfilled, 那么优先执行第一个 fulfilled 实例
    // 如果实例中存在 rejected 状态，不会影响整体执行（只要存在 fulfilled 状态，就一定走.then） 
    // 所有实例全部都为 rejected 状态，走.catch
    let promise1 = new Promise((resolve,reject)=>{
        setTimeout(()=>{
            resolve(1000)
        },1000)
    })

     let promise2 = new Promise((resolve,reject)=>{
        setTimeout(()=>{
            resolve('hello')
        },1000)
    })

     let promise3 = new Promise((resolve,reject)=>{
        setTimeout(()=>{
            resolve('promise3失败了')
        },1000)
    })

    let promise4 =Promise.all([promise1,promise2,promise3])
    .then((res)=>{
        console.log(res);
    })
    .catch((err)=>{
        console.log(err)
    })
</script>
</html>